package cn.message.service;

import cn.itcast.pojo.role;

import java.util.List;
import java.util.Map;

/**
 * @author 郭智超
 * @create 2020-04-27 9:40
 */
public interface IRoleService {

    /**
     * 根据管理员的id查询该管理员所拥有的角色
     * @param adminId
     * @return
     */
    List<role> getRoleByAdminId(Integer adminId);

    /**
     * 根据角色名查询角色信息，判断是否存在该角色名，不存在返回true，存在返回false
     * @param roleName
     * @return
     */
    Boolean getRoleByRoleName(String roleName);

    /**
     * 获取所有的角色信息
     * @param map
     * @return
     */
    Map<String,Object> getAllRole(Map<String,String> map);

    /**
     *
     * @Description: 获取全部角色的名字
     *
     * @auther: 张松
     * @date: 10:19 2020/7/29
     * @param: []
     * @return: java.util.Map<java.lang.String,java.lang.String>
     *
     */
    Map<String, role> getAllRoleName();


    /**
     * 根据角色id删除角色
     * @param roleId
     * @return
     */
    Boolean deleteRole(Integer roleId);

    /**
     * 增加角色，并且赋予角色相应的权限
     * @param map
     * @return
     */
    Boolean addRole(Map<String,String> map);

    /**
     * 修改角色
     * @param map
     * @return
     */
    Boolean updateRole(Map<String,String> map);

    /**
     * 获取所有的角色id和角色名
     * @return
     */
    List<role> getRoles();

    /**
     *
     * @Description:
     * 根据角色获取角色id
     * @auther: 张松
     * @date: 9:47 2020/6/19
     * @param: []
     * @return: java.lang.Integer
     *
     */
    Integer getRoleId(String role);
}
